package com.tmpt.controller.taglib;


import com.tmpt.dto.*;
import com.tmpt.service.CategoryService;

import javax.annotation.Resource;
import javax.servlet.jsp.PageContext;
import java.util.List;

public class CategoryTag {
	@Resource(name="categoryServiceImpl")private CategoryService categoryService;
	@Resource(name="pageContext") private PageContext pageContext;

	/**
	 * just query all sort1
	 * @return
	 */
	public List<Category1Dto> queryCategory1All(){
		List<Category1Dto> categoryDtoList = categoryService.queryCategory1All();
		System.out.print("--------");
		pageContext.setAttribute("categoryDtoList11",categoryDtoList);
		return categoryDtoList;
	}
	
	public String[] queryCategory1All4Charts(){
		String[] strArray={"","",""};
		StringBuilder sb1 = new StringBuilder();
		StringBuilder sb2 = new StringBuilder();
		StringBuilder sb3 = new StringBuilder();
		
		List<Category1Dto> categoryDtoList = categoryService.queryCategory1All();
		for(Category1Dto dto:categoryDtoList){
			sb1.append("'").append(dto.getCategoryName()).append("'").append(",");
			sb2.append(dto.getTotalSellNum()).append(",");
			sb3.append(dto.getTotalSellMoney()).append(",");
		}
		if(categoryDtoList.size()>0){
			sb1.delete(sb1.length()-1, sb1.length());
			sb2.delete(sb2.length()-1, sb2.length());
			sb3.delete(sb3.length()-1, sb3.length());
		}
		
		strArray[0] = sb1.toString();
		strArray[1] = sb2.toString();
		strArray[2] = sb3.toString();
		return strArray;
	}
	
//	public List<Category2Dto> queryCategory2AllByCategory1(Map<String,Object> paramMap){
//		Object category1IdObj = paramMap.get("category1Id");
//		if(category1IdObj == null || category1IdObj.toString().trim() == ""){
//			List<Category2Dto> category2DtoList = new ArrayList<Category2Dto>();
//			return category2DtoList;
//		}
//
//		int category1Id = Integer.parseInt(category1IdObj.toString());
//		return categoryService.queryCategory2ByCategory1(category1Id);
//	}
	
	/**
	 * query all sort , include sort1\sort2\sort3
	 * @return
	 */
//	public List<Category1Dto> queryCategoryAll(){
//		List<Category1Dto> categoryDtoList = categoryService.queryCategoryAll();
//		return categoryDtoList;
//	}
	
	/**
	 * 首页面类别分类
	 * @return
	 */
//	public List<Category1Dto> queryCategoryAllForFirstPage(){
//		List<Category1Dto> categoryDtoList = categoryService.queryCategoryAll();
//		if(categoryDtoList.size()<12){
//			int ii = 12-categoryDtoList.size();
//			for(int i=0;i<ii;i++){
//				Category1Dto c1 = new Category1Dto();
//				c1.setCategoryName("期待加入");
//				categoryDtoList.add(c1);
//				Category2Dto c2 = new Category2Dto();
//				c2.setCategoryName("期待");
//				c1.getCategory2dtoList().add(c2);
//				c2 = new Category2Dto();
//				c2.setCategoryName("期待");
//				c1.getCategory2dtoList().add(c2);
//			}
//		}
//		return categoryDtoList;
//	}

	/**
	 * 查询所有类别
	 * @return
	 */
//	public List<Category1Dto> queryCategoryAllForOthersPage(){
//		List<Category1Dto> categoryDtoList = categoryService.queryCategoryAll();
//		return categoryDtoList;
//	}
	/*
	public List<Category1Dto> queryCategoryAllForOthersPage(Map<String, Object> paramMap){
		System.out.println("=======sefe===");
		Object c1IdObj = paramMap.get("c1Id");
		System.out.println("c1Id:"+c1IdObj);
		return queryCategoryAllForOthersPage();
	}
	*/
	
//	public Category1Dto queryC1DtoAllByC1Id(Map<String, Object> paramMap){
//		Object c1IdObj = paramMap.get("c1Id");
//		if(c1IdObj==null){
//			WebUtils.response("<br/>页面不存在", (HttpServletResponse)pageContext.getResponse());
//			return null;
//		}
//		int c1Id = 0;
//		try {
//			c1Id = Integer.valueOf(c1IdObj.toString());
//		} catch (Exception e) {
//			//e.printStackTrace();
//			WebUtils.response("<br/>页面不存在", (HttpServletResponse)pageContext.getResponse());
//			return null;
//		}
//		Result result = categoryService.queryC1DtoAllByC1Id(c1Id);
//		if(!result.isSuccess()){
//			//System.out.println("ERROR:"+result.getContent());
//			WebUtils.response("<br/>页面不存在", (HttpServletResponse)pageContext.getResponse());
//			return null;
//		}
//
//		Category1Dto c1Dto =  (Category1Dto)result.getResultMap().get("c1Dto");
//
//
//		//填充空白区域
//		Category2Dto c2Dto = new Category2Dto();
//		c2Dto.setCategoryName("期待");
//		int c2ListSize = c1Dto.getCategory2dtoList().size();
//		if(c2ListSize<5){
//			for(int i=0;i<5-c2ListSize;i++){
//				c1Dto.getCategory2dtoList().add(c2Dto);
//			}
//		}
//
//		return c1Dto;
//	}
//
//
//	public Category1Dto queryC1DtoAllByC3Id(Map<String, Object> paramMap){
//		Object c3IdObj = paramMap.get("c3Id");
//		if(c3IdObj==null){
//			return null;
//		}
//		int c3Id = 0;
//		try {
//			c3Id = Integer.valueOf(c3IdObj.toString());
//		} catch (Exception e) {
//			e.printStackTrace();
//			return null;
//		}
//		Result result = categoryService.queryC1DtoAllByC3Id(c3Id);
//		if(!result.isSuccess()){
//			//System.out.println("ERROR:"+result.getContent());
//			return null;
//		}
//
//		Category1Dto c1Dto =  (Category1Dto)result.getResultMap().get("c1Dto");
//
//		/*
//		//填充空白区域
//		Category2Dto c2Dto = new Category2Dto();
//		c2Dto.setCategoryName("期待");
//		int c2ListSize = c1Dto.getCategory2dtoList().size();
//		if(c2ListSize<5){
//			for(int i=0;i<5-c2ListSize;i++){
//				c1Dto.getCategory2dtoList().add(c2Dto);
//			}
//		}
//		*/
//
//		return c1Dto;
//	}
	
	
	/**
	 * query product propety type list by catgory3 for web product list show
	 * @return
	 */
//	public List<ProductTypeDto> queryPropertyTypeListByC3(Map<String,Object> paramMap){
//		List<ProductTypeDto>  propTypeDtoList= new ArrayList<ProductTypeDto>();
//		try {
//			Object c3Id = paramMap.get("c3Id");
//			if(c3Id==null)return null;
//			int c3IdInt = Integer.parseInt(c3Id.toString());
//			propTypeDtoList = categoryService.queryPropertyTypeListByC3(c3IdInt);
//		} catch (Exception e) {
//			e.printStackTrace();
//		}
//		return propTypeDtoList;
//	}
	
//	public Category3Dto queryC3DtoByC3Id(Map<String,Object> paramMap){
//		Object c3IdObj = paramMap.get("c3Id");
//		if(c3IdObj==null){
//			return null;
//		}
//		int c3Id = 0;
//		try {
//			c3Id = Integer.valueOf(c3IdObj.toString());
//		} catch (Exception e) {
//			e.printStackTrace();
//			return null;
//		}
//		Result result = categoryService.queryC3DtoByC3Id(c3Id);
//		if(!result.isSuccess()){
//			//System.out.println("ERROR:"+result.getContent());
//			return null;
//		}
//		Category3Dto c3Dto = (Category3Dto)result.getResultMap().get("c3Dto");
//		return c3Dto;
//	}

	public static void main(String[] args){
		CategoryTag t = new CategoryTag();
		List<Category1Dto> d = t.queryCategory1All();
		System.out.println(d);
	}
}
